Using dynamic logic programming to model cooperative dialogues
نویسنده
چکیده
In this paper we present a system that is able to perform cooperative information-seeking dialogues for the interrogation of a text knowledge base. In our system each event (utterance) is represented by logic programming facts which are used to dynamically update the previous user model. Using this approach it is possible to represent new events as update logic programs and to obtain the new “mental” states. Moreover it is possible to reason about past events and to represent non-monotonic behavior rules. The system has to represent four levels of knowledge using dynamic logic programming. The knowledge levels are: Interaction, Domain, Information Retrieval and Text. The interaction level is responsible for the dialogue management. This includes the ability of the system to infer user intentions and attitudes and the ability to represent the dialogue sentences in a dialogue structure in order to obtain the semantic representation of the dialogue. The domain level includes knowledge about the text domain and it has rules encoding that knowledge. For instance, in the law field it is necessary to represent under which conditions a pension for relevant services may be given to someone; those pensions are usually attributed to militaries or to civilians such as firemen, doctors, and nurses. The Information Retrieval Level includes knowledge about what we should expect to find in texts about a subject, for instance that in texts about pensions for relevant services, the pension may be attributed or refused. The Text Level has knowledge about the words and sequence of words that are in each text of the knowledge base. A detailed example of a cooperative dialogue in the law field will be shown. Introduction In this paper we use dynamic logic programming to integrate four sources of knowledge in order to implement a cooperative dialogue system for a web based information retrieval text database with juridical texts. Our dialogue system achieves cooperation with the user by using knowledge: about the database texts (Information Retrieval level); about the domain, in our case some juridical rules (Domain level); about the words and expressions that occur in each text of the text base (Text level). There is another knowledge level that our system has to represent which is the Interaction. This level includes the representation of the user and system utterances and the intentions associated to each utterance, as well as knowledge that enables the system to infer the user intentions. These four levels of knowledge are represented using dynamic logic programming. Dynamic logic programming (Alferes et al. 1998) defines how a logic program can be updated by other logic programs. In our approach, each event is represented by a logic program (composed only by facts) which is used to update the previous program and to obtain a new one. In fact, events are represented by an update situation and there is no need to explicitly represent time points. Inertia rules are also guaranteed by the dynamic logic programming semantics. The information retrieval system is based on SINO, a text search engine from the AustLII Institute (Greenleaf, Mowbray and King 1997). The Interaction Level represents the speech acts using a dialogue structure that groups the utterances of the dialogue in a way that at any point of the dialogue it is possible to obtain its semantic content. This is obtained with a precise definition of the dialogue segments that include inheritance rules for the dialogue attributes. The following dialogue is an example of a user session in our system (this example will be fully explained in the example section). Dialogue 1: User Q1: Documents about pensions for relevant services? System Q2: Pensions that were given or refused? User Q3: Both. System Q4: Pensions for militaries or civilians? User Q5: Civilians System Q6: There are 129 documents, listed in the right frame. User Q7: where there was a drowning? System Q8: Since there are 45 documents of the 129 above that match the concept, I've listed them in the usual frame. User Q9: No, I mean to look for all documents that match the concept. System Q10: There are 347 documents listed in the right frame. User Q7': Documents about drugs? System Q8': I assume that you want a new query about drugs since there are no documents with the concept drugs and pensions for relevant services for civilians. Do you want to see documents about the use of drugs while driving? User: Q9' yes. ... Given a user utterance, such as Q1, the system is able to cooperatively interact with user in order to refine its query. The system reply to Q1 will be Q2, this reply is achieved by recognizing that this query can be refined since the texts that mention pensions can divided into two disjoint sets, one where pensions were given and another one were pension were refused. This kind of knowledge is encoded in what we have called the Information Retrieval level. This sort of knowledge can be obtained with a preprocessing of the texts in the text base and we have rules encoding it. After the user answer (that could be: given, rejected or both), by using knowledge of the Domain level the system will generate question Q4. This is achieved by knowing that pensions by relevant service have different conditions when there is a military or a civilian. This is juridical knowledge independent of the texts present in the text base. Our system is also able to decide if the user intends to continue its previous query (its utterance is to be interpreted in the context of the previous dialogue) or to open a new query (a new interrogation context). If, after Q1 the user asks Q7, the system will be able to decide that the user intends to look for text where there are a pension and a drowning. But if the user utters Q11 instead of Q7 the system will conclude that the user intends to open a new interrogation context. User Q11: Documents where there are drugs? This is achieved by using the Textual level that encodes knowledge about the texts words and expressions (concepts). Using our retrieval information system SINO, it is possible to see that are some texts where the concepts pension and drowning appears but no texts where the concepts pension and drugs appears. This is what the user expects the system behave in most cases. When this is not the case the user may clarify its query in order oblige the system to behave differently. For instance after Q7 the system will reply Q8 and the user may reply Q7’. Q9 will be understood by the system as a user clarification and it will forget the semantic content of sentences Q1-Q8 by opening a new context with Q9. In order to interpret the sentence Q9 in particular to solve the nominal anaphora the concept, the dialogue structure of sentences Q1-Q8 will be used. Dynamic logic Programming framework Dynamic logic programming (Alferes et al. 1998) defines how a logic program can be updated by other logic programs. In fact it defines a semantic for a sequence of logic program updates P1,...,Pn. In the update process, each state (P1,...,Pn) may represent a different situation, or even a different time point. This feature allows us to model dialogue events by logic programs (composed only by facts) and to use them to update the previous programs. Inertia rules are also guaranteed by the dynamic logic programming semantics. Alferes et al. propose in their paper a declarative and a procedural semantics for dynamic logic programming. In order to describe rules in DLP it is possible to use the keywords before and now to represent the previous and the actual state. For instance, the speech act inform may be described by “bel(H,P)<-inform(S,H,P)/before”, meaning that after an inform speech act, the hearer starts to believe in the informed proposition (we have assumed cooperative and sincere users). Suppose we have: P0 = {int(s,X) <bel(s,int(u,X)), bel(H,P)<-inform(S,H,P)/before}, meaning that the system intends to do an action X if he believes the user intends to do that action; P1 = {inform(u,s,int(u,search_documents))} Then, in state P2 we’ll have: {int(s,search_documents} Moreover, it is possible to use explicit negation and abduction over the DLP framework allowing the representation on non-monotonic characteristics. Knowledge Representation Levels In this section we describe the four knowledge representation levels and we describe how they are integrated in the dynamic logic programming framework. Our four representation levels are: 1 Textual Level 2 Domain Level 3 Information Retrieval Level 4 Interaction (dialogue level) The Text Level has knowledge about the words and sequence of words that are in each text of the knowledge base. The Domain level includes knowledge about the text domain such as juridical knowledge (for instance, under which conditions a pension for relevant services may be given to someone). It has rules that encoded the domain knowledge, such as: normally those pensions are attributed to militaries or to civilians (firemen, doctors, nurses, etc.) and the conditions to be fulfilled by them are different. The Information Retrieval Level includes knowledge about what we should expect to find in texts about a subject, for instance that in texts about pensions for relevant services, the pension may be attributed or refused. The Interaction level is responsible for the dialogue management. This includes the ability of the system to infer user intentions and attitudes and to build the representation of the dialogue sentences in a dialogue structure in order to obtain the semantic representation of the dialogue whenever it is necessary.
منابع مشابه
Solving a Two-Period Cooperative Advertising Problem Using Dynamic Programming
Cooperative advertising is a cost-sharing mechanism in which a part of retailers' advertising investments are financed by the manufacturers. In recent years, investment among advertising options has become a difficult marketing issue. In this paper, the cooperative advertising problem with advertising options is investigated in a two-period horizon in which the market share in the second period...
متن کاملA Constraint-Based Model for Cooperative Response Generation in Information Dialogues
This paper presents a constraint-based model for cooperative response generation for information systems dialogues, with all emphasis on detecting and resolving situations in which the user’s information needs have been over-constrained. Our model integrates and extends the AI techniques of constraint satisfaction, solution synthesis and constraint hierarchy to provide an incremental computatio...
متن کاملA Dynamic Logic Formalisation of Inquiry-Oriented Dialogues∗
In this paper we explore the possibility of using the paradigm of Dynamic Logic (DL) to formalise information states and update processes on information states. In particular, we present a formalisation of Inquiry-Oriented Dialogues in terms of Ginzburg’s dialogue gameboard. From a more general point of view, we show that DL is specially well suited to develop rigorous formal foundations for an...
متن کاملA Flexible Approach to Cooperative Response Generation in Information-Seeking Dialogues
This paper presents a cooperative consultation system on a restricted domain. The system builds hypotheses on the user's plan and avoids misunderstandings (with consequent repair dialogues) through clarification dialogues in case of ambiguity. The role played by constraints in the generation of the answer is characterized in order to limit the cases of ambiguities requiring a clarification dial...
متن کاملMaking the Right Commitments in Dialogue
In this paper we address a problem a problem for analyses of conversation that are based on a robust notion of cooperation. The problem is that such accounts fail to say anything about conversations where a robust notion of cooperation is absent. Moreover, such conversations are not hard to find. They are all around us. We build on previous work in Segmented Discourse Representation Theory (sdr...
متن کاملModeling agents in dialogue systems
In this paper we present an extended logic programming framework that allows the modeling of dialogues between agents with different levels of sincerity and credulity. An agent is modeled by a set of extended logic programming rules, and the agent,s mental state is defined by the well-founded model of the extended logic program. Using this modeling process, an agent is able to participate in di...
متن کامل